// *************************************
// * Creator:SunnyPaine
// * DateTime:2024/08/09 10:08:28
// * Description:<Description>
// * CopyRight:
// * ***********************************

using System.Windows.Input;

namespace SunnyPaine.Autofac.Extension.Mvvm.Commands
{
    /// <summary>
    /// 表示WPF命令相关。
    /// </summary>
    /// <typeparam name="T">命令的参数类型。</typeparam>
    public interface ICommand<T> : ICommand
    {
        /// <summary>
        /// 执行命令指向的方法。
        /// </summary>
        /// <param name="param">命令方法的参数。</param>
        void Execute(T param);

        /// <summary>
        /// 判断命令指向的方法是否可执行。
        /// </summary>
        /// <param name="param">命令方法的参数。</param>
        /// <returns>命令方法是否可执行。</returns>
        bool CanExecute(T param);
    }
}